package homework.day03;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.ObjectInputStream;

/**
 * 将当前目录下的所有注册的User对象对应的obj文件获取到，并进行
 * 反序列化后输出每个用户的信息(直接输出反序列化后的User对象即可)
 * @author Xiloer
 *
 */
public class Test02 {
    public static void main(String[] args) {
        /*
            1:获取当前项目目录下的所有obj文件
            2:每个文件都反序列化得到User对象然后输出
         */
        File dir = new File(".");
        File[] subs = dir.listFiles(f->f.getName().endsWith(".obj"));

        for(File sub : subs){
            System.out.println(sub.getName());
            try (
                FileInputStream fis = new FileInputStream(sub);
                ObjectInputStream ois = new ObjectInputStream(fis);
            ){
               Object obj = ois.readObject();
               if(obj instanceof User){
                   User user = (User)obj;
                   System.out.println(user);
               }
            } catch (IOException e) {
                e.printStackTrace();
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
        }
    }
}
